#通用组件
<template>
  <el-card>
    <div class="page-header">
      <!--
            注意：插槽要用双标签
            1.当前组件左右标签结构都不确定。所以使用插槽技术解决
            因为有两处不确定，需要给slot取名（添加name属性）//利用具名插槽
            2.左右内容不一定有需要显示，只有使用组件的时候，给left和right插槽分发
            标签了，才需要展示内容，这里借助$slot和v-if指令配合做条件渲染
            知识点：$slot可以获取到组件所有的插槽内容
            3.v-if不能加给类名为left和right的div上，这样可能会破坏左右布局，影响排版
         -->
      <div class="left">
        <!-- 如果传递了left插槽，则展示 用content包裹内容-->
        <div v-if="$slots.left" class="content">
          <el-icon name="info" />
          <slot name="left" />
        </div>
      </div>
      <div class="right">
        <!-- 如果传递了right插槽，则展示 -->
        <div v-if="$slots.right" class="content">
          <slot name="right" />
        </div>
      </div>
    </div>
  </el-card>
</template>

<script>
export default {
  name: "PageHeader",
};
</script>

<style scoped lang="scss">
.page-header {
  display: flex;
  justify-content: space-between;
  // 通用组件
  .left {
    .content {
      display: flex;
      align-items: center;
      height: 100%;
      padding: 0 15px;
      border: 1px solid #91d5ff;
      border-radius: 5px;
      background: #e6f7ff;
      .el-icon-info {
        margin-right: 5px;
        color: #409eff;
      }
    }
  }
}
</style>
